// ----------------------------------------------------------------------------
// Classname:		CParser
// Created:			August 1, 2010
//
// Description:		This class is the main class used for loading custom data/config
//					files.  These files will be scanned and tokenized.  The
//					results will be retreivable be methods within this class
// ----------------------------------------------------------------------------

#ifndef CPARSER_H
#define CPARSER_H

class CParser
{
public:
	CParser();
	~CParser();

	bool Create(bool bReserveCommonOperators = true);

	int ProcessFile(char *pszFilename);

	// Reserve a custom operator or keyword
	void ReserveOperator(std::string sOperator);
	void ReserveKeyword(std::string sKeyword);
	void ReserveCommonOperators(void);

private:
	int				m_CurrentLineNum;
	int				m_TotalLinesParsed;

	StringVector	m_OperatorVector;
	StringVector	m_KeywordVector;

}; // class CParser


#endif